/*
* ===================================================
*
*       Filename:  game.hh
*
*       Version:  1.0
*       Created:  12/07/2011 05:18:01 PM
*       Compiler:  gcc
*
*       Author:  durand_y, <yoan.durand@gmail.com>
*
* ===================================================
*/

#ifndef GAME_HH
# define GAME_HH


# include "map.hh"
# include "queen.hh"
# include "random.hh"
# include "token.hh"
# include "parser.hh"
# include "foodworker.hh"
# include "food.hh"
# include "water.hh"
# include "obstacle.hh"

class Game
{
public:
	Game ();
	~Game ();

	Map& init(std::string file);
	void init_team (Map& m,
					unsigned int *i);
	void init_resource (Map& m,
						unsigned int *i);
	void init_obstacle (Map& m,
						unsigned int *i);
	void run (int cycle,
			  Map& m);
	std::vector<Token> get_list ()
	{
		return (this->list_);
	}
private:
	std::vector<Token> list_;

};


#endif /* !GAME_HH */
